package com.ruoyi.youtian.mapper;


import com.ruoyi.common.annotation.DataScope;
import com.ruoyi.youtian.domain.TemplateDetail;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * 模板详情Mapper接口
 *
 * @author ruoyi
 * @date 2022-09-07
 */
@Mapper
public interface TemplateDetailMapper
{
    /**
     * 查询模板详情
     *
     * @param templateDetailId 模板详情主键
     * @return 模板详情
     */
    public TemplateDetail selectTemplateDetailByTemplateDetailId(Long templateDetailId);

    /**
     * 查询模板详情列表
     *
     * @param templateDetail 模板详情
     * @return 模板详情集合
     */
    //@DataScope(deptAlias = "d")
    public List<TemplateDetail> selectTemplateDetailList(TemplateDetail templateDetail);

    /**
     * 新增模板详情
     *
     * @param templateDetail 模板详情
     * @return 结果
     */
    public int insertTemplateDetail(TemplateDetail templateDetail);

    /**
     * 修改模板详情
     *
     * @param templateDetail 模板详情
     * @return 结果
     */
    public int updateTemplateDetail(TemplateDetail templateDetail);

    /**
     * 删除模板详情
     *
     * @param templateDetailId 模板详情主键
     * @return 结果
     */
    public int deleteTemplateDetailByTemplateDetailId(Long templateDetailId);

    /**
     * 批量删除模板详情
     *
     * @param templateDetailIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTemplateDetailByTemplateDetailIds(Long[] templateDetailIds);

    /**
     * 通过templateId 更新 模板详情
     * @param templateDetail
     * @return
     */
    public int updateTemplateDetailByTemplateId(TemplateDetail templateDetail);

    /**
     * 通过templateId 删除 模板详情
     * @param templateId
     * @return
     */
    public int deleteTemplateDetailByTemplateId(Long templateId);


    List<TemplateDetail> selectTemplateDetaiandTemplatelList(TemplateDetail templateDetail);
}
